package com.wicket.okrapp.integration.dto;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc ImplementGrootsReturnFirstStepComReqDto
 * @使用场景
 */
@Data
public class ImplementGrootsReturnFirstStepComReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 部门ID
   */
  @NotNull(message = "部门ID不能为空")
  @ApiModelProperty("部门ID")
  private String deptId;

  /**
   * 部门OKR目标ID
   */
  @NotNull(message = "部门OKR目标ID不能为空")
  @ApiModelProperty("部门OKR目标ID")
  private String deptOkrTargetId;

  /**
   * 冗余评价模板ID
   */
  @NotNull(message = "冗余评价模板ID不能为空")
  @ApiModelProperty("冗余评价模板ID")
  private String evaluationTemplateId;

  /**
   * 进入步骤房间值
   */
  @NotNull(message = "进入步骤房间值不能为空")
  @ApiModelProperty("进入步骤房间值")
  private String stepRoomValue;

  /**
   * 批次标识
   */
  @NotNull(message = "批次标识不能为空")
  @ApiModelProperty("批次标识")
  private String batchCode;

  /**
   * 批次现状
   */
  @NotNull(message = "批次现状不能为空")
  @ApiModelProperty("批次现状")
  private String batchCurrentStatus;

  /**
   * 用途类型编码
   */
  @NotNull(message = "用途类型编码不能为空")
  @ApiModelProperty("用途类型编码")
  private String useTypeCode;

  @ApiModelProperty("就职记录列表 ")
  List<String> orgInductionRecordList = new ArrayList<>();

  /**
   * 回退消息发送类型 ALL:不限 APPOINT:指定发送人 UN_SEND_MSG:不发消息
   */
  @NotNull(message = "回退消息发送类型不能为空")
  @ApiModelProperty("回退消息发送类型")
  private String backMsgSendType;

  /**
   * 消息内容
   */
  @ApiModelProperty("消息内容")
  private String messageContent;

}
